<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8" />
		<meta name="viewport" content="width=device-width, initial-scale=1">
		<link rel="stylesheet" href="../../res/layui/css/layui.css" media="all">
		<link rel="stylesheet" href="../../res/css/common/font-awesome.min.css" media="all">
		<link rel="stylesheet" href="../../res/layui-config/css/app.css" media="all">
		<title>原材料管理</title>
    </script>
	</head>
	<body>
		<div class="kit-table">
		    <form class="layui-form" lay-filter="kit-search-form">
				<!-- 左上角的两个按钮 -->
		        <div class="kit-table-header">
		            <div class="kit-search-btns">
		                <a href="javascript:;" data-action="add" class="layui-btn layui-btn-sm"><i class="layui-icon">&#xe608;</i> 新增</a>
		            </div>
		            
		            <div class="kit-search-inputs">
		                <div class="kit-search-keyword">
		                    <input type="text" class="layui-input" name="matName" id="serach-one" placeholder="药材名称.." onKeyUp="lockInput(this,'serach-two')"/>
		                    <button lay-submit lay-filter="search"><i class="layui-icon">&#xe615;</i></button>
		                </div>
		                <div class="kit-search-more" id="kit-search-more">更多筛选<i class="layui-icon">&#xe61a;</i></div>
		            </div>
		        </div>
				<!-- 搜索扩展工具条 -->
		        <div class="kit-search-mored layui-anim layui-anim-upbit">
		            <div class="kit-search-body">
		                <div class="layui-form-item">
		                    <label class="layui-form-label">药品名称</label>
		                    <div class="layui-input-block">
		                        <input type="text" name="matName" maxlength="10" id="serach-two"  placeholder="搜索关键字.." autocomplete="off" class="layui-input" onKeyUp="lockInput(this,'serach-one')">
		                    </div>
		                </div>
		                <div class="layui-form-item">
			                <label class="layui-form-label">类型</label>
			                <div class="layui-input-block">
			                    <select name="mtName" id="drug-type">
			                      <option value=""></option>
			                    </select>
			                </div>
		                </div>
		                
		            </div>
		            <div class="kit-search-footer">
		                <button type="reset" class="layui-btn layui-btn-sm layui-btn-primary kit-btn reset-btn">重置</button>
		                <button lay-submit lay-filter="search" class="layui-btn layui-btn-sm kit-btn">确定</button>
		            </div>
		        </div>
		    </form>
				
			<!-- 操作按钮 -->
		    <div class="kit-table-body">
		        <table id="demo" lay-filter="demo"></table>
		        <script type="text/html" id="barDemo">
		            <a class="layui-btn layui-btn-xs" lay-event="edit">编辑</a>
		            <a class="layui-btn layui-btn-danger layui-btn-xs" lay-event="del">删除</a>
		        </script>
		    </div>
		</div>
		
		<!-- 修改页面 -->
		<script type="text/html" id="edit-tpl">
		    <div style="margin:10px">
		        <form class="layui-form" action="" lay-filter="form-edit">
		            <input type="hidden" name="matId" value="{{d.rowdata.matId}}" />
					<div class="layui-form-item">
		                <label class="layui-form-label">类型</label>
		                <div class="layui-input-block">
		                    <select name="mtId" lay-verify="required">
		                      <option value=""></option>
		                      {{# layui.each(d.types,function(index,item){ }}                      
		                      {{# if(item.mtId===d.rowdata.mtId){}}
		                      <option value="{{item.mtId}}" selected>{{item.mtName}}</option>
		                      {{#}else{}}
		                      <option value="{{item.mtId}}">{{item.mtName}}</option>
		                      {{#};}}
		                      {{# }); }}
		                    </select>
		                </div>
		            </div>
		            <div class="layui-form-item">
		                <label class="layui-form-label">药材名称</label>
		                <div class="layui-input-block">
		                    <input type="text" name="matName" maxlength="10" required lay-verify="required" value="{{d.rowdata.matName}}" placeholder="请输入药材名称" autocomplete="off" class="layui-input">
		                </div>
		            </div>
						
		            <div class="layui-form-item">
		                <label class="layui-form-label">单价</label>
		                <div class="layui-input-block">
		                    <input type="text" name="matPrice" maxlength="10" required lay-verify="required" value="{{d.rowdata.matPrice}}" placeholder="请输入认购数额" autocomplete="off" class="layui-input activity_card_money" onKeyUp="amount(this)">
		                </div>
		            </div>
					
					<div class="layui-form-item">
		                <label class="layui-form-label">药品单位（个、粒、克）</label>
		                <div class="layui-input-block">
		                    <input type="text" name="matUnit" maxlength="10" required lay-verify="required" value="{{d.rowdata.matUnit}}" placeholder="请输入药品单位" autocomplete="off" class="layui-input activity_card_money">
		                </div>
		            </div>

					<div class="layui-form-item">
		                <label class="layui-form-label">功效</label>
		                <div class="layui-input-block">
							<input type="text" name="matEffect" maxlength="15" required lay-verify="required" value="{{d.rowdata.matEffect}}" placeholder="请输入功效" autocomplete="off" class="layui-input">
		                </div>
		            </div>

					
					
		            <div class="layui-form-item" style="display:none;">
		                <div class="layui-input-block">
		                    <button class="layui-btn" lay-submit lay-filter="formEdit">立即提交</button>
		                    <button type="reset" class="layui-btn layui-btn-primary">重置</button>
		                </div>
		            </div>
		        </form>
		    </div>
		</script>
		<script src="../../res/js/common/jquery-1.11.2.min.js"></script>
		<script>
			//文本框只能输入金额
		    function amount(th){
		        var regStrs = [
		            ['^0(\\d+)$', '$1'], //禁止录入整数部分两位以上，但首位为0
		            ['[^\\d\\.]+$', ''], //禁止录入任何非数字和点
		            ['\\.(\\d?)\\.+', '.$1'], //禁止录入两个以上的点
		            ['^(\\d+\\.\\d{2}).+', '$1'] //禁止录入小数点后两位以上
		        ];
		        for(i=0; i<regStrs.length; i++){
		            var reg = new RegExp(regStrs[i][0]);
		            th.value = th.value.replace(reg, regStrs[i][1]);
		        }
		    }
			//搜索框同步输入
			function lockInput(obj,id){
				$("#"+id).val($(obj).val());
			}
		</script>
		<script src="../../res/layui/layui.all.js"></script>
		<script>
			//显示表格数据
		    layui.use(['table','upload'], function() {
		        var table = layui.table,
		            $ = layui.jquery,
		            layer = layui.layer,
		            form = layui.form,
		            laytpl = layui.laytpl;
		        var tableIns = table.render({
		            elem: '#demo',
		            height: 'full-50', //容器高度
		            url: '../../material/showList.action',
		            page: true,
		            id: 'demo',
		            cols: [
		                [{checkbox: true,fixed: true},
		                {field: 'mtName',title: '类型',width: 175},
		                {field: 'matName',title: '药材名称',width: 150},
		                {field: 'matPrice',title: '单价',width: 90},
		                {field: 'matUnit',title: '药品单位(个,颗,粒)',width: 150,sort: true},
		                {field: 'matEffect',title: '功效',width: 150},
		                {fixed: 'right',title: '操作',width: 180,align: 'center',toolbar: '#barDemo'}]
		            ],
		            done: function(res, curr, count) {
		                $("[data-field = 'drugProp']").children().each(function(){
						    if($(this).text() == '1'){
						    	$(this).text("处方药");
						    } else if ($(this).text() == '0') {
						    	$(this).text("非处方药");
						    }
					  	});
		                /* $("[data-field = 'drugPictrue']").children().each(function(){
						    if($(this).text() == 'null'||$(this).text() == ''){
						    	$(this).text("暂无");
						    }
					  	}); */
		            },
		            loading: true
		        });
		        
				//查询类型下拉框数据
		        var staticData = null;
		        $.ajax({ url:"../../matType/showList.action",
                    type:'post',//method请求方式，get或者post
                    cache: false,//同步
                    dataType:'json',//预期服务器返回的数据类型
                    success:function(mes){//res为相应体,function为回调函数
                    	//增加及修改类型下拉框内的数据
                    	staticData = mes;
                    	console.log(mes.data)
                    	//循环添加类型搜索框内的数据
                    	$.each(mes.data,function(index,item){
                    		$("#drug-type").append("<option value="+item.mtName+">"+item.mtName+"</option>");
                    	});
                    	//渲染类型搜索框内的下拉框
                    	renderForm();
                    }
                 });
		        
		        //监听搜索表单提交
		        form.on('submit(search)', function(data) {
		            //带条件查询
		            tableIns.reload({
		                where: data.field,
		                page: { curr: 1 }
		            });
		            $('.kit-search-mored').hide();
		            return false;
		        });
		        
		        //渲染 修改和增加弹出层
			    function showlayer(d){
			    	laytpl($('#edit-tpl').html()).render(d,function(html) {
	                    layer.open({
	                        type: 1,
	                        title: '原材料操作',
	                        content: html,
	                        area: ['800px', '430px'],
	                        btn: ['提交', '重置', '取消'],
	                        yes: function(index, layero) {
	                            editIndex = index;
	                            $('form[lay-filter="form-edit"]').find('button[lay-submit]').click();
	                        },
	                        btn2: function(index, layero) {
	                            $('form[lay-filter="form-edit"]').find('button[type="reset"]').click();
	                            return false;
	                        },
	                        success: function() {
	                            form.render(null, 'form-edit');
	                        }
	                    });
	                    
	                });
			    }
		        
		        //监听工具条按钮点击
		        table.on('tool(demo)', function(obj) { //注：tool是工具条事件名，test是table原始容器的属性 lay-filter="对应的值"
		            var data = obj.data; //获得当前行数据
		            var layEvent = obj.event; //获得 lay-event 对应的值
		            var tr = obj.tr; //获得当前行 tr 的DOM对象
		
		            if (layEvent === 'detail') { //查看
		                console.log(table.checkStatus('demo'));
		            } else if (layEvent === 'del') { //删除
		                layer.confirm('真的删除行么', function(index) {
		                	layer.close(index);
		                    update("../../material/addorUpdate.action",{"matId":data.matId,"isva":"0"});
		                });
		            } else if (layEvent === 'edit') { //编辑
		                var d = {
		                	rowdata: data,
		                    types: staticData.data
		                };
		                showlayer(d);
		            }
		        });
		        
		        //表单渲染
		        form.render(null, 'kit-search-form');
		        //更多筛选点击事件
		        $('#kit-search-more').on('click', function() {
		            $('.kit-search-mored').toggle();
		        });
		        var editIndex;
		        
		        //增加和修改弹出层   提交按钮点击事件
		        form.on('submit(formEdit)', function(data) {
                	
                	$.ajax({ url:"../../material/addorUpdate.action",
                        type:'post',//method请求方式，get或者post
                        cache: false,//同步
                        dataType:'json',//预期服务器返回的数据类型
                        data:JSON.stringify(data.field),//表格数据序列化
                        contentType: "application/json; charset=utf-8",
                        success:function(mes){//res为相应体,function为回调函数
	                        if(mes.status==1){ 
		                        $("#res").click();//调用重置按钮将表单数据清空
		                        history.go(0);location.reload();//返回上一页重载页面，本地刷新
	                        	layer.msg(mes.msg,{icon:1});
	                        } else {
	                        	layer.msg(mes.msg,{icon:5});
	                        }
                        },
                       	error:function(){layer.alert('操作失败！！！',{icon:5});}
	                 });
                	
                	editIndex && layer.close(editIndex); //关闭弹出层
                	return false;
		        });
		        
		        //增加、批量删除 按钮点击事件
		        $('.kit-search-btns').children('a').off('click').on('click', function() {
		            var $that = $(this),
		                action = $that.data('action');
		            switch (action) {
		            	//点击的是 增加按钮
		                case 'add':
		                    var d = {
		                		//替换增加页面文本框内出现的undefine
		                        rowdata: {
		                        	matId: '',mtName: '',matName: '',matAmount: '',matPrice: '',matUnit: '',matEffect:'',isva:'',
		                        },
		                        //类型下拉框数据
		                       	types: staticData.data
		                       	
		                    };
		                    showlayer(d);
		                    break;
		                    
		                //点击的是 批量删除按钮
		                case 'del-bulk':
		                    var d = table.checkStatus('demo');
		                    if (d.data.length === 0) {
		                        layer.msg('请选择要删除的数据');
		                        return;
		                    }
		                    var data = d.data,
		                        names = [],
		                        ids = [];
		                    layui.each(data, function(index, item) {
		                        names.push(item.matName);
		                        ids.push(item.matId);
		                    });
		                    layer.confirm('真的删除行么', function(index) {
		                    	layer.close(index);
		                    	update("../../material/addorUpdate.action",ids);
			                });
		                    break;
		                    
		            }
		        });
		        
		    });
			
		  	//全屏弹窗
			function maxlayer(){
				var index = layer.open({
				  type: 2,
				  content: 'http://layim.layui.com',
				  area: ['320px', '195px'],
				  maxmin: true
				});
				layer.full(index);
			}
		    
		    //增加、修改、删除、批量删除 都是用的这一个方法
		    function update(url,data){
		    	$.ajax({
		    		url: url,
                    type:'post',//method请求方式，get或者post
                    cache: false,//同步
                    dataType:'json',//预期服务器返回的数据类型
                    data: JSON.stringify(data),//表格数据序列化
                    contentType: "application/json; charset=utf-8",
                    success:function(mes){//res为相应体,function为回调函数
                    	$(".layui-laypage-btn")[0].click();//当前表格刷新
                        if(mes.status==1){ 
                        	var close = true;//有弹出层时是关闭弹出层 false不关闭
	                        $("#res").click();//调用重置按钮将表单数据清空
	                        $(".layui-laypage-btn")[0].click();//当前表格刷新
                        }
                        layer.msg(mes.msg);
                    },
                   	error:function(){layer.alert('数据异常，请稍后重试！！！',{icon:5});}
                 });
		    }
		    
		    
		    
		  	//重新渲染表单
		  	function renderForm(){ 
	  			layui.use('form', function(){ 
		  			var form = layui.form;//高版本建议把括号去掉，有的低版本，需要加() 
		  			form.render(); 
	  			}); 
	  		}
		    //ajax加载动画
		    $(function () {
	            $.ajaxSetup({
	                layerIndex:-1,
	                beforeSend: function () {
	                    this.layerIndex = layer.load(1, { shade: [0.8, '#ffffff'] });
	                },
	                complete: function () {
	                    layer.close(this.layerIndex);
	                },
	                error: function () {
	                    layer.alert('部分数据加载失败，可能会导致页面显示异常，请刷新后重试', {
	                        skin: 'layui-layer-molv'
	                       , closeBtn: 0
	                       , shift: 4 //动画类型
	                    });
	                }
	            });
	        });
		</script>
	</body>
</html>
